One or more aspects relate, in general, to processing within a computing environment, and in particular, to processing associated with long and short pointers.
Many architectures, including the z/Architecture and Power architecture offered by International Business Machines Corporation, Armonk, N.Y., offer multiple Application Binary Interface (ABI) environments. For instance, the z/Architecture environment ships a 31-bit (31b) environment in addition to a 64-bit (64b) environment. Similarly, POWER ships 32-bit (32b) and 64-bit (64b) environments. These environments are implemented by a multi-library (multilib) approach, in which multiple libraries, middleware and build tools are provided, one for each environment, that all refer to the same system functions. Other architectures similarly provide a multilib approach.
In each environment, pointers are used to reference objects. For instance, in 31-bit or 32-bit environments, short pointers (e.g., 31b or 32b pointers) are used which contain offsets to objects local to its processes. Similarly, in 64-bit environments, long pointers (e.g., 64b pointers) are used that point to objects that may be outside the current address space.
Development and distribution of multiple system libraries increases developer maintenance, as well as build and debug costs, and increases the support that is to be provided to subsystems that are shipped.